//
// Created by sjjmw on 2/23/2022.
//

#ifndef LEETCODE__17_H
#define LEETCODE__17_H

//todo
// 假设有k个人质和k个绑匪围成一圈。人质的编号从1到k，绑匪的编号从k+1到2k。
// 从编号1开始，每次从其中选出第m个人(隔m-1选出一人)出列。
// 希望求出m的最小值，使得最先出列的k个人都是绑匪，即都是编号从k+1到2k的人。
#include "iostream"

int main() {
    int a,sum=0;
    while (scanf("%d", &a)!=EOF){
        if(a==0){
            continue;
        }
        sum=0;
        if(a==2){
            a++;
        }
        while(a/3>0){
            int huan=a/3;
            sum+=huan;
            a=a%3+huan;
            if(a==2){
                a++;
            }
        }

        printf("%d\n",sum);
    }

    return 0;
}


#endif //LEETCODE__17_H
